home *** CD-ROM | disk | FTP | other *** search
/ Resource Library: Multimedia / Resource Library: Multimedia.iso / maestro / source / cdedit / main.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-06-15  |  6.2 KB  |  220 lines

  1. /*
  2.  * Copyright (c) 1990, 1991 Stanford University
  3.  *
  4.  * Permission to use, copy, modify, and distribute this software and 
  5.  * its documentation for any purpose is hereby granted without fee, provided
  6.  * that (i) the above copyright notices and this permission notice appear in
  7.  * all copies of the software and related documentation, and (ii) the name
  8.  * Stanford may not be used in any advertising or publicity relating to
  9.  * the software without the specific, prior written permission of
  10.  * Stanford.
  11.  * 
  12.  * THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, 
  13.  * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY 
  14.  * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  
  15.  *
  16.  * IN NO EVENT SHALL STANFORD BE LIABLE FOR ANY SPECIAL, INCIDENTAL,
  17.  * INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES
  18.  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT
  19.  * ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY,
  20.  * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
  21.  * SOFTWARE.
  22.  */
  23.  
  24. /* $Header: /Source/Media/collab/cdEdit/RCS/main.h,v 2.12 92/07/17 16:32:44 drapeau Exp $ */
  25. /* $Log:    main.h,v $
  26.  * Revision 2.12  92/07/17  16:32:44  drapeau
  27.  * Minor change to preprocessor symbol to avoid possible name conflicts.
  28.  * 
  29.  * Revision 2.11  92/05/29  12:37:43  drapeau
  30.  * Modified code to track new name of the MAEstro "Selection" structure;
  31.  * it is now named "MAESelection".
  32.  * 
  33.  * Revision 2.10  92/01/03  17:50:06  drapeau
  34.  * Removed inclusion of string.h, letting XView header files include
  35.  * the appropriate definitions.
  36.  * 
  37.  * Revision 2.0  91/10/06  21:01:41  chua
  38.  * Update to version 2.0
  39.  * 
  40.  * Revision 1.25  91/09/24  16:26:49  chua
  41.  * Changed the MaxListSize from 1000 to 100 (unlikely anybody will reach 100 entries in
  42.  * an edit list).
  43.  * 
  44.  * 
  45.  * Revision 1.24  91/09/18  17:26:50  chua
  46.  * Removed the hard path for the include files.
  47.  * 
  48.  * Revision 1.23  91/09/04  11:39:12  chua
  49.  * Added a few extern declarations of functions (errors given by xsaber).
  50.  * 
  51.  * Revision 1.22  91/09/03  15:35:24  chua
  52.  * Do not include the "getopt.h" file here.  Only include it in the cdEdit.c file, 
  53.  * where getopt is used.
  54.  * 
  55.  * Revision 1.21  91/09/03  15:31:43  chua
  56.  * Added the copyright header.
  57.  * 
  58.  * Changed the constants from all capitalized to initial capitalized only.
  59.  * 
  60.  * Added and deleted some variable declarations.
  61.  * 
  62.  * Revision 1.2  91/07/10  11:33:17  chua
  63.  * Deleted the quit variable, as we now use a quit interpose function instead.
  64.  * 
  65.  * Revision 1.1  91/07/09  16:47:27  chua
  66.  * Added a new variable, quit, to keep track of whether the quit button has been pressed.
  67.  * 
  68.  * Revision 1.0  91/07/08  13:46:07  chua
  69.  * Initial revision
  70.  *  */
  71.  
  72. static char cdEditHrcsid[] = "$Header: /Source/Media/collab/cdEdit/RCS/main.h,v 2.12 92/07/17 16:32:44 drapeau Exp $";
  73.  
  74. #ifndef _cdEditMain_
  75. #define _cdEditMain_
  76.  
  77. #include <stdio.h>
  78. #include <sys/file.h>
  79. #include <sys/param.h>
  80. #include <sys/stat.h>
  81. #include <sys/time.h>
  82. #include <sys/types.h>
  83. #include <xview/xview.h>
  84. #include <xview/font.h>
  85. #include <xview/notice.h>
  86. #include <xview/notify.h>
  87. #include <xview/panel.h>
  88. #include <xview/textsw.h>
  89. #include <xview/xv_xrect.h>
  90. #include <scsi/scsi.h>
  91. #include <scsi/targets/srdef.h>
  92. #include <sun/dkio.h>
  93. #include <gdd.h>
  94. #include "msf.h"
  95. #include "toc.h"
  96. #include "cdEdit_ui.h"
  97. #include "ConnectPortManager_ui.h"
  98. #include <MAEstro.h>
  99. #include <Sender.h>
  100. #include <Receiver.h>
  101.  
  102. #define MaxListSize 100
  103. #define MaxLabelLength 256
  104.  
  105. #define LoadFile    0                        /* Optypes used for checking if changes have been made. */ 
  106. #define DeleteAll     1
  107. #define QuitcdEdit    2
  108. #define CloseFile    3
  109.  
  110. #define StopMode    0
  111. #define PlayMode    1
  112. #define PauseMode    2
  113. #define DurationMode     3
  114. #define Nothing        4
  115.  
  116. #define Equal 0
  117. #define Greater 1
  118. #define Less 2
  119.  
  120. #define Current 0
  121. #define Whole 1
  122. #define Clear 2
  123.  
  124. #define Relative 0
  125. #define Absolute 1
  126.  
  127. #define OK     0
  128. #define Error    1
  129.  
  130. cdEdit_window1_objects                *cdEdit_window1;
  131. cdEdit_EditPopup_objects            *cdEdit_EditPopup;
  132. cdEdit_PreviewPopup_objects            *cdEdit_PreviewPopup;
  133. cdEdit_InfoPopup_objects            *cdEdit_InfoPopup;
  134. ConnectPortManager_PortManagerPopup_objects    *cdEdit_PortManagerPopup;
  135.  
  136. extern void OpenDoc();                            /* Network protocol functions and variables */
  137. extern void SetSelection();
  138. extern void PerformSelection();
  139. extern char **GetDoc();
  140. extern MAESelection* GetSelection();
  141. extern void HaltSelection();
  142. extern void PauseSelection();
  143. extern void ResumeSelection();
  144. extern void HideApplication();
  145. extern void ShowApplication();
  146. extern IconData *GetAppIcon();
  147.  
  148. extern int starttrack[MaxListSize];
  149. extern int startmin[MaxListSize];
  150. extern int startsec[MaxListSize];
  151. extern int startframe[MaxListSize];
  152. extern int endtrack[MaxListSize];
  153. extern int endmin[MaxListSize];
  154. extern int endsec[MaxListSize];
  155. extern int endframe[MaxListSize];
  156. extern int volume[MaxListSize];
  157. extern int balance[MaxListSize];
  158. extern int duration[MaxListSize];
  159. extern char label[MaxListSize][MaxLabelLength];           
  160. extern Xv_font *font;                           
  161.  
  162. extern int editmin;
  163. extern int editsec;
  164. extern int editTotalTracks;
  165. extern int editnum;
  166. extern int lines;
  167. extern int change;
  168. extern char *cdfilename;
  169. extern int offset;
  170. extern Msf offsetStart;
  171. extern int playerState;
  172. extern int discInPlayer;
  173.  
  174. extern int fd;    
  175. extern Toc toc;
  176.  
  177. extern Sender *tempSender;
  178. extern Sender *sender;
  179. extern Receiver *receiver;
  180. extern Port senderPort;
  181. extern int ReceiverPortNumber;                       
  182.  
  183. extern int numTracks;
  184. extern int startTrack;
  185. extern int endTrack;
  186. extern int displayType;        
  187.  
  188. extern void EditDone();
  189. extern Notify_value TimerNotify();
  190.  
  191. extern void AlertMessage();
  192. extern int OpenHandler();
  193. extern int SaveHandler();
  194. extern void LoadStartEnd();
  195. extern int SetDuration();
  196. extern void PreviewStartEnd();
  197. extern void EditAdd();
  198. extern void EditDeleteAll();
  199. extern void SetVolume();
  200. extern void Eject();
  201. extern void cdInit();
  202. extern void CheckOptions();
  203. extern void UpdateHeader();
  204. extern void DimButtons();
  205. extern Msf GetCurrentStart();
  206. extern Msf GetCurrentEnd();
  207. extern void Stop();
  208. extern void Pause();
  209. extern void Play();
  210. extern void GetStartEnd();
  211. extern Msf ConvertRelativeToAbsolute();
  212. extern void UpdateTime();
  213. extern Toc ReadDiscToc();
  214. extern void PrintOnList();
  215. extern void PrintNumEdit();
  216. extern void ConnectPortManager();
  217.  
  218.  
  219. #endif
  220.